﻿package javase.io;

import java.io.*;
import java.util.*;

public class FileDemo02 {
	public static void main(String[] args) {
		try {
			File file = new File(args[0]);
			if (file.isFile()) { // 是否为文件
				System.out.println(args[0] + " 文件");
				System.out.print(file.canRead() ? "可读" : "不可读");
				System.out.print(file.canWrite() ? "可写" : "不可写");
				System.out.println(file.length() + "字节");

			} else {
				// 列出所有的文件及目录
				File[] files = file.listFiles();
				ArrayList<File> fileList = new ArrayList<File>();
				for (int i = 0; i < files.length; i++) {
					// 先列出目录
					if (files[i].isDirectory()) { // 是否为目录
						// 取得路径名
						System.out.println("[" + files[i].getPath() + "]");
					} else {
						// 文件先存入fileList，待会再列出
						fileList.add(files[i]);
					}
				}

				// 列出文件
				for (File f : fileList) {
					System.out.println(f.toString());
				}
				System.out.println();
			}
		} catch (ArrayIndexOutOfBoundsException e) {
			System.out.println("using: java FileDemo pathname");
		}
	}
}